#ifndef _OPCODES_H_
#define _OPCODES_H_
#include <string>
enum Opcodes
{
	OPCODE_NONE								= 0,
	CMSG_PLAYER_LOGIN_CHECK_ACCOUNT			= 1,
	SMSG_PLAYER_LOGIN_CHECK_ACCOUNT			= 2,
	CMSG_PLAYER_LOGIN_GET_PLAYER_CARD		= 3,
	SMSG_PLAYER_LOGIN_GET_PLAYER_CARD		= 4,
	CMSG_PLAYER_CHANGE_CARD_TEAM_SLOT		= 5,
	SMSG_PLAYER_CHANGE_CARD_TEAM_SLOT		= 6,
	CMSG_PLAYER_GET_ACHMENT_DATA			= 7,
	SMSG_PLAYER_GET_ACHMENT_DATA			= 8,
	CMSG_NEXT_PACKET_REQUIRE				= 9999,
};


class OpcodeHandler
{
public:
	OpcodeHandler();
	~OpcodeHandler();
	static OpcodeHandler* GetInstance();
	typedef std::string WorldPacket;
	WorldPacket SplitPacket(WorldPacket& WorldPacket);
	void HandlePlayerGetData(WorldPacket& _WorldPacket);
	void MessageComming(WorldPacket& _WorldPacket);
	void HandlePlayerGetCardsOpcode(WorldPacket& _WorldPacket);
	void HandlePlayerChangeCardTeamSlotCallBack(WorldPacket& _WorldPacket);
	void HandlePlayerGetAchmentDataOpcode(WorldPacket& _WorldPacket);
};
#endif